BETWEEN 演算子は、指定された範囲内の値を選択します。値には、数値、テキスト、または日付を使用できます。
BETWEEN 演算子は、開始値と終了値を含むデータを選択します。
SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2
以下は、「Products」テーブルのサンプルです。
ProductID | ProductName | SupplierID | CategoryID | Unit | Price |
---|---|---|---|---|---|
1 | Chais | 1 | 1 | 10 boxes x 20 bags | 18.00 |
2 | Chang | 1 | 1 | 24 - 12 oz bottles | 19.00 |
3 | Aniseed Syrup | 1 | 2 | 12 - 550 ml bottles | 10.00 |
4 | Chef Anton's Cajun Seasoning | 2 | 2 | 48 - 6 oz jars | 22.00 |
5 | Chef Anton's Gumbo Mix | 2 | 2 | 36 boxes | 21.35 |
次の SQL ステートメントは、価格が 10 ~ 20 のすべての製品を選択します。
Run SQLSELECT * FROM Products
WHERE Price BETWEEN 10 AND 20
前の例の範囲外の製品を表示するには、NOT BETWEEN を使用します。
Run SQLSELECT * FROM Products
WHERE Price NOT BETWEEN 10 AND 20
次の SQL ステートメントは、価格が 10 ~ 20 のすべての製品を選択しますが、同時に CategoryID 1、2、または 3 の製品は表示されません。
Run SQLSELECT * FROM Products
WHERE Price BETWEEN 10 AND 20
AND CategoryID NOT IN (1,2,3)
次の SQL ステートメントは、ProductName から「Carnarvon Tigers」と「Mozzarella di Giovanni」の間のすべての製品を選択します。
Run SQLSELECT * FROM Products
WHERE ProductName BETWEEN 'Carnarvon Tigers' AND 'Mozzarella di Giovanni'
ORDER BY ProductName
次の SQL ステートメントは、ProductName から「Carnarvon Tigers」と「Chef Anton's Cajun Seasoning」の間のすべての製品を選択します。
Run SQLSELECT * FROM Products
WHERE ProductName BETWEEN 'Carnarvon Tigers' AND 'Chartreuse verte'
ORDER BY ProductName
次の SQL ステートメントは、「Carnarvon Tigers」と「Mozzarella di Giovanni」の間にないすべての製品を ProductName から選択します。
Run SQLSELECT * FROM Products
WHERE ProductName NOT BETWEEN 'Carnarvon Tigers' AND 'Mozzarella di Giovanni'
ORDER BY ProductName
以下はテーブル「Orders」(「注文」) のサンプルです。
ProductID | OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|---|
1 | 10248 | 90 | 5 | 1996-07-04 | 3 |
2 | 10249 | 81 | 6 | 1996-07-05 | 1 |
3 | 10250 | 34 | 4 | 1996-07-08 | 2 |
4 | 10251 | 84 | 3 | 1996-07-08 | 1 |
5 | 10252 | 76 | 4 | 1996-07-09 | 2 |
次の SQL ステートメントは、「01- July-1996」から「31- July-1996」までの OrderDate からのすべての注文 (Orders) を選択します。
SELECT * FROM Orders
WHERE OrderDate BETWEEN #07/01/1996# AND #07/31/1996#
または:
Run SQLSELECT * FROM Orders
WHERE OrderDate BETWEEN '1996-07-01' AND '1996-07-31'